<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2018/3/30 0030
 * Time: 下午 5:35
 */
$x = 10;
$y = 6;
echo ($x + $y);  //输出16
echo '<br>';  //换行

echo ($x - $y);  //输出4
echo '<br>';  //换行

echo ($x * $y).'<br>';  //输出60

echo ($x / $y).'<br>';  //输出1.6666666666667

echo ($x % $y).'<br>';  //输出4

echo -$x.'<br>';

//php7+版本新增整除运算符intdiv()
//var_dump(intdiv(10,3));

//赋值运算符
$x=10;
echo $x; // 输出10
echo '<br>';

$y=20;
$y += 100;
echo $y; // 输出120
echo '<br>';

$z=50;
$z -= 25;
echo $z; // 输出25
echo '<br>';

$i=5;
$i *= 6;
echo $i; // 输出30
echo '<br>';

$j=10;
$j /= 5;
echo $j; // 输出2
echo '<br>';

$k=15;
$k %= 4;
echo $k; // 输出3
echo '<br>';

$a = "Hello";
$b = $a . " world!";
echo $b; // 输出Hello world!
echo '<br>';
$x="Hello";
$x .= " world!";
echo $x; // 输出Hello world!
echo '<br>';
//递增、递减运算符
$x=10;
echo ++$x; // 输出11
echo '<br>';
$y=10;
echo $y++; // 输出10
echo '<br>';
$z=5;
echo --$z; // 输出4
echo '<br>';
$i=5;
echo $i--; // 输出5
echo '<br>';
//比较运算符
$x=100;
$y="100";

var_dump($x == $y);
echo "<br>";
var_dump($x === $y);
echo "<br>";
var_dump($x != $y);
echo "<br>";
var_dump($x !== $y);
echo "<br>";

$a=50;
$b=90;

var_dump($a > $b);
echo "<br>";
var_dump($a < $b);
//逻辑运算符

//数组运算符
$x = array("a" => "red", "b" => "green");
$y = array("c" => "blue", "d" => "yellow");
$z = $x + $y; // $x 和 $y 数组合并
var_dump($z);
var_dump($x == $y);
var_dump($x === $y);
var_dump($x != $y);
var_dump($x <> $y);
var_dump($x !== $y);

//三元运算符
$test = '菜鸟教程';
// 普通写法
$username = isset($test) ? $test : 'nobody';
echo $username, PHP_EOL;

// PHP 5.3+ 版本写法
$username = $test ?: 'nobody';
echo $username, PHP_EOL;
//注意：PHP_EOL 是一个换行符，兼容更大平台。

//组合比较符(PHP7+)
// 整型
//echo 1 <=> 1; // 0
//echo 1 <=> 2; // -1
//echo 2 <=> 1; // 1
//
//// 浮点型
//echo 1.5 <=> 1.5; // 0
//echo 1.5 <=> 2.5; // -1
//echo 2.5 <=> 1.5; // 1
//
//// 字符串
//echo "a" <=> "a"; // 0
//echo "a" <=> "b"; // -1
//echo "b" <=> "a"; // 1

//运算符优先级
// 优先级： &&  >  =  >  and
// 优先级： ||  >  =  >  or
$a = 3;
$b = false;
$c = $a or $b;
var_dump($c);          // 这里的 $c 为 int 值3，而不是 boolean 值 true
$d = $a || $b;
var_dump($d);          //这里的 $d 就是 boolean 值 true
//括号的使用
// 括号优先运算
$a = 1;
$b = 2;
$c = 3;
$d = $a + $b * $c;
echo $d;
echo "\n";
$e = ($a + $b) * $c;  // 使用括号
echo $e;
echo "\n";
?>